package Entities;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name = "Cotizaciones")
public class CotizacionBean implements Serializable {

	public CotizacionBean(){
		
	}
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int idCotizacion;
	private Date fechaEmision;
	private Date fechaVencimiento;
	private double precioTotal;
	private List<ItemCotizacionBean> itemsCotizacion;

	@Id
	@Column(name = "idCotizacion", nullable = false)
	public int getIdCotizacion() {
		return idCotizacion;
	}

	public void setIdCotizacion(int idCotizacion) {
		this.idCotizacion = idCotizacion;
	}

	@Column(name = "fechaEmision", nullable = false)
	public Date getFechaEmision() {
		return fechaEmision;
	}

	public void setFechaEmision(Date fechaEmision) {
		this.fechaEmision = fechaEmision;
	}

	@Column(name = "fechaVencimiento", nullable = false)
	public Date getFechaVencimiento() {
		return fechaVencimiento;
	}

	public void setFechaVencimiento(Date fechaVencimiento) {
		this.fechaVencimiento = fechaVencimiento;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
	@JoinColumn(name = "idCotizacion", nullable = false)
	public List<ItemCotizacionBean> getItemsCotizacion() {
		return itemsCotizacion;
	}

	public void setItemsCotizacion(List<ItemCotizacionBean> itemsCotizacion) {
		this.itemsCotizacion = itemsCotizacion;
	}

	public void setPrecioTotal(double precioTotal) {
		this.precioTotal = precioTotal;
	}

	public double getPrecioTotal() {
		return precioTotal;
	}
}
